<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <script>
    // 获取当前页面的 URL
    const href = window.location.href;

    // 举个实际的例子
    let url = 'https://www.bilibili.com/video/BV1jXP5eBECQ/?spm_id_from=333.1007.tianma.1-1-1.click&vd_source=dba3cdfa62282168a300732f1f9e2164';

    // 获取参数
    function getUrlParams(url) {
      // 检查输入是否为字符串
      if (typeof url !== 'string') {
        throw new TypeError('URL must be a string');
      }

      // 检查 URL 是否包含查询参数
      const queryString = url.split('?')[1];
      if (!queryString) {
        return {}; // 如果没有查询参数，返回空对象
      }

      // 解码查询字符串
      const decodedQueryString = decodeURIComponent(queryString);

      // 将查询字符串分割为键值对
      const pairs = decodedQueryString.split('&');

      // 创建一个对象来存储参数
      const params = {};
      for (let pair of pairs) {
        const [key, value] = pair.split('=');
        if (key) {
          params[key] = value || ''; // 如果没有值，则设置为空字符串
        }
      }

      return params;
    }

    try {
      const result = getUrlParams(url);
      console.log('result', result);
    } catch (error) {
      console.error('Error:', error);
    }
  </script>
</body>
</html>
